#include "../main.h"

void delete_mem(char *data)
{
    if (data != NULL)
    {
        free(data);
        data = NULL;
    }
}
int char_has_value(char *data)
{
    if (data != NULL && strlen(data) > 0)
    {
        return 1;
    }
    else
    {
        return 0;
    }
}
//字符串相加
char *charJoin(char *s1, char *s2)
{
    char *buffer = (char *)malloc(strlen(s1) + strlen(s2) + 1);
    memset(buffer, 0, strlen(s1) + strlen(s2) + 1);
    memcpy(buffer, s1, strlen(s1));
    memcpy(buffer + strlen(s1), s2, strlen(s2));
    return buffer;
}
//字符串复制
char *charCopy(char *s1, int len)
{
    if (s1 != NULL)
    {
        char *s2 = (char *)malloc(len);
        memset(s2, 0, len);
        memcpy(s2, s1, len);
        return s2;
    }
    return NULL;
}

char *stringCopy(char *s1, int len)
{
    if (s1 != NULL)
    {
        char *s2 = (char *)malloc(len + 1);
        memset(s2, 0, len + 1);
        memcpy(s2, s1, len);
        s2[len] = '\0';
        return s2;
    }
    else
    {
        return NULL;
    }
}

void convertUnCharToStr(char *str, unsigned char *UnChar, int ucLen)
{
    int i = 0;
    for (i = 0; i < ucLen; i++)
    {
        //格式化输str,每unsigned char 转换字符占两位置%x写输%X写输
        sprintf(str + i * 2, "%02x", UnChar[i]);
    }
}

void convertStrToUnChar(char *str, int size, unsigned char *UnChar)
{
    int i = size, j = 0, counter = 0;
    char c[2];
    unsigned int bytes[2];

    for (j = 0; j < i; j += 2)
    {
        if (0 == j % 2)
        {
            c[0] = str[j];
            c[1] = str[j + 1];
            sscanf(c, "%02x", &bytes[0]);
            UnChar[counter] = bytes[0];
            counter++;
        }
    }
    return;
}

void to_upcase(char *data)
{

    // int len = strlen(data);
    // int i = 0;
    // for (i = 0; i < len; i++)
    // {
    //     printf("s1");
    //     char b = data[i];
    //     if (b >= 'A' && b <= 'Z')
    //     {
    //         b = b + 32;
    //         data[i] = b;
    //         printf("%c\n", b);
    //     }
    //     else if (b >= 'a' && b <= 'z')
    //     {
    //         b = b - 32;
    //         data[i] = b;
    //         printf("%c\n", b);
    //     }
    // }
}
